package com.sip.stream.utils.zfy;

import java.io.IOException;
import java.io.RandomAccessFile;

public class WavHeaderHelper {
    private static byte[] long2bytes(long j) {
        return new byte[]{(byte) (j & 255), (byte) ((j >> 8) & 255), (byte) ((j >> 16) & 255), (byte) ((j >> 24) & 255)};
    }

    public byte[] getWaveFileHeader(int i, int i2, int i3, int i4, long j) {
        long j2 = j - 8;
        long j3 = j2 - 36;
        return new byte[]{82, 73, 70, 70, (byte) (j2 & 255), (byte) ((j2 >> 8) & 255), (byte) ((j2 >> 16) & 255), (byte) ((j2 >> 24) & 255), 87, 65, 86, 69, 102, 109, 116, 32, 16, 0, 0, 0, 1, 0, (byte) i2, 0, (byte) (i & 255), (byte) ((i >> 8) & 255), (byte) ((i >> 16) & 255), (byte) ((i >> 24) & 255), (byte) (i4 & 255), (byte) ((i4 >> 8) & 255), (byte) ((i4 >> 16) & 255), (byte) ((i4 >> 24) & 255), (byte) ((i3 * i2) / 8), 0, (byte) i3, 0, 100, 97, 116, 97, (byte) (j3 & 255), (byte) ((j3 >> 8) & 255), (byte) ((j3 >> 16) & 255), (byte) ((j3 >> 24) & 255)};
    }

    public void updateWavFileHeader(String str, long j) throws IOException {
        RandomAccessFile randomAccessFile = new RandomAccessFile(str, "rw");
        randomAccessFile.seek(4L);
        randomAccessFile.write(long2bytes(j - 8));
        randomAccessFile.seek(40L);
        randomAccessFile.write(long2bytes(j - 44));
    }
}
